package models

import "gorm.io/gorm"

type User struct {
	gorm.Model
	Mobile   string `gorm:"type:char(11);unique;comment:'手机号'"`
	Account  string `gorm:"type:varchar(20);unique;comment:'账号'"`
	Password string `gorm:"type:char(32);unique;comment:'密码'"`

	Images   string //头像
	NickName string //昵称
	Email    string //联系方式
}

//手机号查询
func (u *User) GetUserByMobile(mobile string) error {
	return DB.Where("mobile=?", mobile).Limit(1).Find(&u).Error
}

//通过账号
func (u *User) GetUserByAccount(account string) error {
	return DB.Where("account=?", account).Limit(1).Find(&u).Error
}

func (u *User) GetUserByID(userId int64) error {
	return DB.Where("id=?", userId).Limit(1).Find(&u).Error
}

func (u *User) UpdatesUserInfo(userid int) error {
	return DB.Model(&u).Where("id=?", userid).Updates(&u).Error
}

func (u *User) UpdatePwd(userid int, password string) error {
	return DB.Model(&u).Where("id=?", userid).Update("password", password).Error
}
